<?xml version="1.0"?>
<?xml-stylesheet href="chrome://global/skin" type="text/css"?>
<?xml-stylesheet href="chrome://mochikit/content/tests/SimpleTest/test.css"
                 type="text/css"?>
<window title="NPAPI Set Undefined Value Test"
  xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
  <script type="application/javascript"
          src="chrome://mochikit/content/tests/SimpleTest/SimpleTest.js" />
  <script type="application/javascript" src="plugin-utils.js"></script>
<body xmlns="http://www.w3.org/1999/xhtml" onload="runTests()">
<script class="testbody" type="application/javascript">
<![CDATA[
SimpleTest.waitForExplicitFinish();
setTestPluginEnabledState(SpecialPowers.Ci.nsIPluginTag.STATE_ENABLED);

function runTests() {
  var pluginElement1 = document.getElementById("plugin1");

  var rv = true; // we want !true from the test plugin
  var exceptionThrown = false;
  try {
    rv = pluginElement1.setUndefinedValueTest();
  } catch (e) {
    exceptionThrown = true;
  }
  is(exceptionThrown, false, "Exception thrown setting undefined variable.");
  is(rv, false, "Setting undefined variable succeeded.");

  // give the UI a chance to settle with the current enabled plugin state
  // before we finish the test and reset the state to disabled. Otherwise
  // the UI shows the plugin infobar!
  SimpleTest.executeSoon(SimpleTest.finish);
}
]]>
</script>
<embed id="plugin1" type="application/x-test" width="300" height="300"></embed>
</body>
</window>
